package com.shihan._02_juc_concurrent_utils._03_atomic._01_atomicinteger;

import java.util.concurrent.TimeUnit;

/**
 * @Description
 * @Author shihan
 * @Date 2021/8/22 16:10
 * @Version 1.0
 */
public class MainTest {

    public static void main(String[] args) {
        MyAtomicInteger myAtomicInteger = new MyAtomicInteger();
        /**
         * 启动十个线程，每个线程内部去调用10次自增，看最终得到的结果是不是 100
         */
        for (int i = 0; i < 10; i++) {
            new Thread(myAtomicInteger).start();
        }

        /**
         * 延迟一小会儿，保证每个线程都执行完毕了
         */
        try { TimeUnit.SECONDS.sleep(1); } catch (InterruptedException e) { e.printStackTrace(); }

        /**
         * 最后调用一下 get 方法，获取到当前的数值
         */
        System.out.println(myAtomicInteger.getAtomicInteger().get());
    }

}
